/**
 * 
 */
package com.orange.handler;

import java.sql.SQLException;
import java.util.List;
import java.util.Map;

import com.orange.dbhelp.page.Page;
import com.orange.modules.bean.SchoolItemBean;
import com.orange.modules.bean.expert.ExpertTaskBean;
import com.orange.modules.entity.school.AuthSchool;

/**
 * @author gaogs
 *
 * 2016-10-16
 */
public interface AuthSchoolService {
	
	/**
	 * 根据账号查询机构信息
	 * @param account
	 * @return
	 * @throws SQLException 
	 */
	public AuthSchool queryAuthSchoolInfoByAccount(String account) throws SQLException ;
	
	public AuthSchool queryAuthSchoolInfoBypid(String pid) throws SQLException ;
	
	public AuthSchool queryAuthSchoolInfoByAccount(String account,String major) throws SQLException ;
		
	public Page<AuthSchool> queryAuthSchoolInfoByPage(Integer pageNumber,Integer pageSize , Map<String ,String> map) throws SQLException;
	
	//修改
	public void updateAuthSchoolInfo(AuthSchool as) throws SQLException;
	
	//删除
	public void deleteAuthSchoolInfo(String pid)throws SQLException;

	//按照专业名称查询
	public Page<AuthSchool> queryAuthSchoolPageInforBymajor(Map<String,String>map)throws SQLException;
	
	//模糊查询学校名称
	public AuthSchool queryAuthSchoolInforByschoolName(String schoolName)throws SQLException;

	//所有状态修改
	public void updateAuthSchoolInfoAll(AuthSchool as) throws SQLException;
	
	//分页查询1
	//public Page<AuthSchool> queryAuthSchoolPage(Integer pageNumber,Integer pageSize ,Map<String,String>map) throws SQLException;
	
	//分页查询2
	public Page<AuthSchool> queryAuthSchoolPage(Map<String,String>map) throws SQLException;
	
	/**
	 * 根据机构id查询机构信息
	 * @param pid
	 * @return
	 * @throws SQLException 
	 */
	public AuthSchool queryAuthSchoolInfoById(String pid) throws SQLException;
	
	/**
	 * 查询所有未绑定现场考察专家组的机构
	 * @return
	 */
	public List<AuthSchool> queryUnAuthSchoolList()throws SQLException;

	/**
	 * 查询所有学校id
	 * @return
	 */
	public AuthSchool queryAuthSchoolAllId() throws SQLException;
	
	/**
	 * 需要课堂观摩评价的学校列表
	 * @return
	 * @throws SQLException 
	 */
	public Page<AuthSchool> queryAuthSchoolAndObservation(String expertId,Map<String, String> map) throws SQLException;
	
	/**
	 * 专家分配的专业技能学校列表
	 * @return
	 * @throws SQLException 
	 */
	public Page<ExpertTaskBean> queryAuthSchoolAndTask(String expertId,Map<String, String> map) throws SQLException;
	
	/**
	 * 专家分配的一级指标学校列表
	 * @return
	 * @throws SQLException 
	 */
	public Page<ExpertTaskBean> queryAuthSchoolOneIndexAndTask(String expertId,Map<String, String> map) throws SQLException;
	
	
	
	/**
	 * 查询所有已经提交认证申请的学校
	 * @return
	 * @throws SQLException 
	 */
	public List<AuthSchool> queryAuthSchoolListHaveSubmit() throws SQLException;
	
	/**
	 * 材料评审--分页查询专家绑定的学校
	 */
	public Page<SchoolItemBean> queryAuthSchoolItemById(String expertId,Map<String, String> map) throws SQLException;
	
	/**
	 * 材料评审--分页查询专家绑定的分项指标
	 */
	public List<SchoolItemBean> queryAuthItemByExportIdAndSchoolId(String expertId,String schoolId) throws SQLException;

	/**
	 * 材料评审意见汇总--分页查询专家组绑定的机构
	 */
	public Page<AuthSchool> queryAuthSchoolByGroupId(String groupId,Map<String, String> map) throws SQLException;
	
	/**
	 * 材料评审--填报数据查看
	 */
	public Page<AuthSchool> queryAuthSchoolPageByExportId(String exportId ,Map<String, String> map) throws SQLException;

}
